/*
 * Copyright (c) 1998, 2023 Oracle and/or its affiliates. All rights reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0 which is available at
 * http://www.eclipse.org/legal/epl-2.0,
 * or the Eclipse Distribution License v. 1.0 which is available at
 * http://www.eclipse.org/org/documents/edl-v10.php.
 *
 * SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
 */

// Contributors:
//     Oracle - initial API and implementation from Oracle TopLink
package org.eclipse.persistence.testing.tests.remotecorba.suncorba;

/**
* org/eclipse/persistence/testing/Remote/SunCORBA/CORBAServerManagerHelper.java
* Generated by the IDL-to-Java compiler (portable), version "3.0"
* from CORBAServerManager.idl
* Wednesday, August 23, 2000 1:20:43 PM EDT
*/

abstract public class CORBAServerManagerHelper
{
  private static String  _id = "IDL:org/eclipse/persistence/testing/Remote/SunCORBA/CORBAServerManager:1.0";

  private static org.omg.CORBA.TypeCode __typeCode = null;
  public static CORBAServerManager extract (org.omg.CORBA.Any a)
  {
    return read (a.create_input_stream ());
  }
  public static String id ()
  {
    return _id;
  }
  public static void insert (org.omg.CORBA.Any a, CORBAServerManager that)
  {
    org.omg.CORBA.portable.OutputStream out = a.create_output_stream ();
    a.type (type ());
    write (out, that);
    a.read_value (out.create_input_stream (), type ());
  }
  public static CORBAServerManager narrow (org.omg.CORBA.Object obj)
  {
    if (obj == null)
      return null;
    else if (obj instanceof CORBAServerManager)
      return (CORBAServerManager)obj;
    else if (!obj._is_a (id ()))
      throw new org.omg.CORBA.BAD_PARAM ();
    else
    {
      org.omg.CORBA.portable.Delegate delegate = ((org.omg.CORBA.portable.ObjectImpl)obj)._get_delegate ();
      return new _CORBAServerManagerStub(delegate);
    }
  }
  public static CORBAServerManager read (org.omg.CORBA.portable.InputStream istream)
  {
    return narrow (istream.read_Object (_CORBAServerManagerStub.class));
  }
  synchronized public static org.omg.CORBA.TypeCode type ()
  {
    if (__typeCode == null)
    {
      __typeCode = org.omg.CORBA.ORB.init ().create_interface_tc (CORBAServerManagerHelper.id (), "CORBAServerManager");
    }
    return __typeCode;
  }
  public static void write (org.omg.CORBA.portable.OutputStream ostream, CORBAServerManager value)
  {
    ostream.write_Object (value);
  }
}
